﻿using RxxAdmin.Model.RootTkey;
using SqlSugar;

namespace RxxAdmin.Model.Base;

public abstract class BaseLog
{
    /// <summary>
    /// ID
    /// 泛型主键Tkey
    /// </summary>
    [SugarColumn(IsNullable = false, IsPrimaryKey = true)]
    public long Id { get; set; }

    [SplitField]
    public DateTime? DateTime { get; set; }

    [SugarColumn(IsNullable = true)]
    public required string Level { get; set; }

    [SugarColumn(IsNullable = true, ColumnDataType = "longtext,text,clob")]
    public required string Message { get; set; }

    [SugarColumn(IsNullable = true, ColumnDataType = "longtext,text,clob")]
    public required string MessageTemplate { get; set; }

    [SugarColumn(IsNullable = true, ColumnDataType = "longtext,text,clob")]
    public required string Properties { get; set; }
}